#https://www.yuque.com/haas506/vp2l2f/kbkiuezsgpy3g8ev
from machine import Pin
import time

def demo():
    # 初始化一个GPIO引脚，例如GPIO16（继电器）
    pin = Pin(16, mode=Pin.OUT, pull=Pin.PULL_UP)  # 初始化GPIO为输出模式，启用内部上拉电阻
    # 设置初始电平
    pin.value(0)
    # 设置中断处理函数
    def handle_irq(pin):
        print("Interrupt triggered! Pin value is: ", pin.value())
    # 设置中断，触发条件为上升沿和下降沿
    pin.irq(trigger=Pin.IRQ_FALLING | Pin.IRQ_RISING, handler=handle_irq)
    #开关继电器测试
    pin.on()  
    time.sleep(1)
    pin.off()  
    time.sleep(1)
    pin.value(1) 
    time.sleep(1)
    pin.value(0) 
    # 清除中断
    pin.irq(None)
    # 最后设置引脚初始状态
    pin.init(mode=Pin.IN, pull=Pin.PULL_UP)

if __name__ == '__main__':
    demo()
